const moment = require("moment")
/**
 * 计算百分比 通过现在的时间 减去 初始时间time 得到一共需要打卡多少天
 * @param {number} time 初始的时间
 * @param {Array} arr 对象数组[{ time: 1709537908598, 是否参与计算: 0 }] 
 * @param {string} attribute 是否参与计算的属性
 * @returns {string} 百分比 1709622833000
 */
exports.percentage = function(time,arr,attribute){
    const days = +moment.utc().diff(+moment.utc(time),"days")
    let newArr = arr.filter(item => {
        // 如: 效果是 2024-02-03 12:24:20  + 1天  = 2024-02-04 00:00:00
        // 先将初始时间转为YYYY-MM-DD格式 在加 1 天 在转为utc时间 去和 打卡的utc时间比较
        //console.log(+moment.utc(moment(moment.utc(time).format("YYYY-MM-DD"),"YYYY-MM-DD").add(1,"d")) <= item.time);
        return +moment.utc(moment(moment.utc(time).format("YYYY-MM-DD"),"YYYY-MM-DD").add(1,"d")) <= +item.time &&  (item[attribute] !== undefined ? item[attribute] : 1) === 1
    })
    return (newArr.length / days * 100).toFixed(2) + "%"
    
}